Download

Acrobat file (84K)
Download

ClarisWorks 4 file (36K)
Download Technotes 1001-1012

QuickView file (473K)

T E C H N O T E :
On the Deferred Task Manager


TECHNOTE 1003 OCTOBER 1995


By Matthew Xavier Mora
mxmora@apple.com
Apple Developer Technical Support (DTS)

This Note highlights two points - interrupt latency, and task record ownership - that might be unclear after reading the chapter "Deferred Task Manager" in Inside Macintosh:Processes.

This Note is intended for all developers who need to install a lengthy interrupt task capable of running with all interrupts enabled.


CONTENTS

About Deferred Task Latency

There may be significant latency incurred between installing a deferred task with DTInstall and when that task is performed. This time is not deterministic and cannot be controlled. Real-time response cannot be guaranteed on Macintosh computers with or without the use of deferred tasks.

About the Ownership of the DeferredTask Record

When you install a deferred task with DTInstall, you are giving your DeferredTask record to the system; the system owns the record until the routine designated by the DeferredTask record's dtAddr field is entered. During the time the system owns a DeferredTask record, you must not change any of the fields of that record.

Similarly, you must not depend on the contents of the record when it is owned by the system. The system is free to alter the record in any fashion while it has ownership and restores the record to its original state prior to invoking the deferred task. You must not install a DeferredTask record which is already owned by the system. Finally, you must not use the dtReserved field for any purpose; it should be set to zero prior to installing a deferred task with DTInstall.

Further Reference

Change History

This Technote was originally written by Jim Luther, in July, 1992. Most of the original information has been incorporated into Inside Macintosh: Processes,

The references section has been updated. Information found in the chapter "Deferred Task Manager" in Inside Macintosh:Processes, has been deleted.


Return to Technotes Table of Contents
Return to About Macintosh Technotes
Return to Developer Services and Products

Apple | Servers | What's New | Index | Feedback | Help


© Apple Computer, Inc.

Send feedback to devfeedback@applelink.apple.com.